#include <iostream>

// C++14标准下，静态成员变量和静态成员函数的分开存储
// 只有非静态成员变量才属于类的对象上
class Person
{
public:
    int m_A; // 非静态成员变量
    static int m_B; // 静态成员变量 不属于对象上
    void func(){}   // 非静态成员函数 不属于对象上
    static void func2(){} // 静态成员函数 不属于对象上
};

int Person::m_B = 100; // 类外初始化

void test01()
{
    // 空对象占用1字节内存，防止不同对象有相同地址
    Person p;
    std::cout << "size of p = " << sizeof(p) << std::endl;  
}

void test02()
{
    // 空对象占用1字节内存，防止不同对象有相同地址
    Person p;
    std::cout << "size of p = " << sizeof(p) << std::endl;  
}

int main()
{
    test01();
    test02();
    return 0;
}